package org.xxpay.core.service;

import org.xxpay.core.entity.PayAlizftSettRecord;

import java.util.List;

public interface IPayAlizftSettRecordService {

    List<PayAlizftSettRecord> select(int pageIndex, int pageSize, PayAlizftSettRecord PayAlizftSettRecord);

    long count(PayAlizftSettRecord PayAlizftSettRecord);

    int add(PayAlizftSettRecord PayAlizftSettRecord);

    int update(PayAlizftSettRecord PayAlizftSettRecord);

    int delete(Long id);

    PayAlizftSettRecord findById(Long id);

    /** 根据条件更新 **/
    int updateByCondition(PayAlizftSettRecord updateRecord, PayAlizftSettRecord condition, List<Byte> applyStatusList);

    /** 初始化一条数据,  如成功返回记录ID **/
    Long initWaitRecord(String channelOrderNo, String payOrderId);

    /** 更新到指定状态 或不更新状态   并且累加重试次数和信息  **/
    int updateWait2StatusAndCountAndMsg(PayAlizftSettRecord dbRecord, String thisApplyMsg, Byte updatedStatus);

}
